package config

import (
	"encoding/json"
	"io"
	"os"
)

type Config struct {
	Oray struct {
		Domain   string `json:"domain"`
		Username string `json:"username"`
		Password string `json:"password"`
	} `json:"oray"`
	InterVal int `json:"interVal"`
}

func GetConfig() (*Config, error) {
	configPath := "config.json"
	return getConfigByPath(configPath)
}

func getConfigByPath(configPath string) (*Config, error) {
	configFile, err := os.Open(configPath)
	if err != nil {
		return nil, err
	}
	defer configFile.Close()
	configContent, err := io.ReadAll(configFile)
	if err != nil {
		return nil, err
	}
	var config Config
	err = json.Unmarshal(configContent, &config)
	if err != nil {
		return nil, err
	}

	return &config, nil
}
